#pragma once

#include "material.h"

namespace raytrace {

class Lambert : public Material {
 public:
  Lambert(Vector3Arg reflectance_color, Vector3Arg emittance_color);

  virtual void GetOutDirection(Vector3Arg in, Vector3Arg normal, uint32_t depth,
                               std::vector<float>& ipdfs,
                               std::vector<Vector3>& outs) const;

  virtual const char* type() const { return "lambert"; }
};
}
